Video projectors are a widely used display device in conference rooms, classrooms, home theaters, commercial signage, and many other locations. They can provide a large screen display solution where the costs of similar sized conventional monitor devices are prohibitive. Projection based technologies vary, but the core function is the same among all display devices: to output a view of some input video signal. Generally this involves a physical coupling of an output of a source device to an appropriate input on the display device.
Projector placement relative to the display surface can vary the output image size and appearance. Short-throw projector technologies allow the projector to be placed near the display surface while conventional solutions might require a much further distance between the projector and the screen. In either case, devices providing video signals to the projector must be connected to the projector inputs. These video interconnections can be problematic when a projector is difficult to reach, such as mounted high in a ceiling to provide an unobstructed light path to the screen, or when cable lengths between inputs and outputs are inadequate. Requiring the source device to be located near the projector often leads to compromises in device placement and presenter location which can affect display output and presentation quality.
Network projectors are quickly becoming popular display devices. In additional to providing any conventional signal inputs, they can receive their display content over the LAN. This allows source devices to be connected anywhere the network is available instead of directly wired to the physical projector. Network projector status and functional management can be operated remotely over the network by authorized devices. This effectively removes the requirement for line of sight remote control mechanisms to change configurations, display options, or power settings. Networking options thus allow far greater freedom for projector and source device placement within the conference room.
Network projectors are challenged in their ability to handle smooth playback of high definition video by increasing source content and output resolutions. Larger content data sizes and real-time video display requirements place high demands on the network throughput, projector processing power, and internal operating system support. In addition, source devices must also be configured for transmission of their content across a network. While it would be uncommon today for a laptop or PC to not be equipped with networking capabilities, operating system support of network display technologies has been slow to mature. This is in sharp contrast to the tight integration that generally exists between operating system graphical user interfaces (GUIs) and powerful graphics processing units on today's video cards which offer video signal outputs.
One technology that allows access to dynamic source content on a remote device over a network is called Virtual Network Computing (VNC) and provides a remote desktop sharing solution. With this approach, a client application on one PC connects to a host application on another PC. The host application is configured to iteratively provide the changing views of the entire operating system desktop and views of applications running on the host PC to the client application across the network for display on the client PC. Keyboard and mouse inputs on the client PC are redirected by the client application across the network to the host PC and function as inputs to the sharing session. A user on the client PC can thus view the remote host PC desktop and interact with it by operating his local keyboard and mouse devices.
Microsoft has designed several similar technologies that facilitate desktop sharing within their operating systems. Microsoft's Remote Desktop Services, for example, is optimized for the Windows® OS and provides thin-client terminal server computing, Remote Desktop, and more. This technology is evolving into new enterprise solutions replacing conventional PCs with thin-clients that can access virtually hosted user desktops on remote servers. Microsoft's rich Remote Desktop Protocol with new and upcoming RemoteFX features provides efficient and secure transmission of screen content across the network. Additional related solutions include Microsoft's Windows Desktop Sharing APIs (application programming interfaces) that can transmit desktop images to authenticated devices across the network. Some of these approaches follow a “push” model and are used by Microsoft Pictor, Remote Assistance, and Windows Meeting Space applications.
One primary use of a projector is to display a connected user's laptop screen. In an example business conference room environment, PCs/laptops are often physically brought and connected to a projector with a video cable to display source content. In a networked conference room environment, the PCs and projector are connected to a local area network and content is sent through the network to the projector for presentation. The user interacts with the laptop during his presentation while his desktop contents are continually forwarded to the projector and shown on the display surface. Compared with conventional video signal solutions, desktop content distribution across the network to a network projector is not a trivial task.
Though many application solutions have been developed to aid the data exchange process, each operates differently. EPSON's EasyMP® Network Projection technologies, for example, allows for the transfer of computer screen contents across the network for display output by the projector. However, this solution requires installation of many specialized drivers and application software on the host PC along with user setup and configuration of display and connection operations. The EasyMP software's internal techniques used to collect a computer's desktop data, which composes the screen contents, vary and have limited performance on different systems. This is in part due to restrictions within the computer operating system regarding access to screen contents by third-party applications and ever tightened coupling with graphics sub-systems. For example, the increased use of offloading operating system rendering to advanced graphic hardware modules results in high-performance graphics operations but limits application exposure to native screen buffers which are stored on the graphics hardware and optimized for video signal output by the graphics card.
It can be argued that the operating system is best suited to collect and distribute native desktop GUI data since system services are integral to the window rendering processes. Microsoft does, for example, offer some native features in their current operating systems that allow a user to connect with a network projector to output desktop contents to a projected display. Once enabled, the operating system on the host PC transmits desktop contents to an authorized network projector. Unfortunately, the performance of Microsoft's solution is not as acceptable as a direct video connection to the graphics card. Microsoft's Remote Desktop technologies are another more suitable option since they offer better performance between networked devices. However, remote desktop solutions are all based on the use of a client PC or thin-client device to make the connection to the host. This usually requires a client-side keyboard and mouse for entering access credentials for authentication and user control of the session.
Conveniently, the internal design for a network projector can be, and often is, constructed around well-known embedded systems platforms which offer core hardware and operating system elements to a device vendor. Many of these platforms expose PC-like functionally and provide applications and common interface elements to aid the vendor in designing device specific features or interconnectivity. This frees the vendor from designing low-level elements, such as network stacks, IO and storage, or GUI components. Vendors can spend their time on device specific elements such as UI, configuration options, core display functionality, etc.
Some device system platforms, including Linux varieties or Microsoft Windows Embedded solutions, can natively support input peripherals including keyboards and mouse device connections. Projectors, however, typically do not expose such connections as they are not common for display hardware and generally unnecessary for typical control and interface operations. A few buttons on the projector (as with conventional monitors), a remote control provided with the projector, or network management solutions are typically used for device management. The nature of a projector's location within a room would make additional attached keyboard and mouse devices awkward or introduce yet another cabling concern. While wireless keyboard and mice could offer a solution, wireless range may be limiting, and the increased hardware costs to projector vendors and users are undesirable.
If a keyboard and mouse were present, the more advanced remote desktop solutions could be employed and make the network projector function more like a thin-client device. This would require the laptop user to change keyboard and mouse devices while operating with the projector device.
It would therefore be desirable to have the following features in a system that uses a projector: (a) users can utilize their own familiar keyboard and mouse/track-pad input devices; (b) network projector desktop retrieval and display performance as good as that offered by remote desktop solutions; and (c) automatic and limited software installation to achieve network projector operation. The present invention is directed to achieving these and other objectives.